home *** CD-ROM | disk | FTP | other *** search
/ Workbench Design / WB Collection.iso / workbench werkzeuge / guis für programme / xanim guis / xanim / xanimamigabeta7 / xanim_merlin.c < prev    next >
C/C++ Source or Header  |  1996-04-07  |  2KB  |  56 lines

  1. #include <hrg/hrg_all.h>
  2.  
  3. struct Library *HRGSystemBase;
  4. struct Library *HRGRenderBase;
  5. struct Library *HRGToolBase;
  6.  
  7. struct HRHandle *hrh;
  8.  
  9. ULONG error;
  10.  
  11. UWORD modes[]= { HRCOL_PACKED8, HRCOL_XGA, HRCOL_RGB24, NULL };
  12. ULONG *hrgtags[] = {
  13.     (ULONG *)HTRM_BitMapTypes, (ULONG *)&modes[0],
  14.     (ULONG *)TAG_END,0
  15. };
  16.  
  17. struct TagItem screentags[] = {
  18.     { HTOS_BitMapType, HRCOL_PACKED8 },
  19.     { HTOS_Width, 192 },
  20.     { HTOS_Height, 144 },
  21.     { HTOS_Error, &error },
  22.     { HTOS_Title, "Xanim Amiga" },
  23.     { HTOS_EazyScreen, HRES_SCROLL },
  24. /*    { HTOS_DoDither, TRUE },*/
  25.     { TAG_DONE,        0}
  26. };
  27.  
  28.  
  29. void CloseMerlin()
  30. /* Exit program with message, return code 10 */
  31. {
  32.  
  33.     if(hrh)    hrCloseScreen(hrh);
  34.     if(HRGSystemBase)    CloseLibrary(HRGSystemBase);
  35.     if(HRGRenderBase)    CloseLibrary(HRGRenderBase);
  36.     if(HRGToolBase)        CloseLibrary(HRGToolBase);
  37. }
  38.  
  39. /****************************************************************************/
  40.  
  41. void OpenMerlin()
  42. {
  43.  
  44.     if(!(HRGSystemBase=OpenLibrary((UBYTE *)"hrgsystem.library", 38L))) {CloseMerlin();exit(20);}
  45.     if(!(HRGRenderBase=OpenLibrary((UBYTE *)"hrgrender.library", 38L))) {CloseMerlin();exit(20);}
  46.     if(!(HRGToolBase=OpenLibrary((UBYTE *)"hrgtool.library", 38L))) {CloseMerlin();exit(20);}
  47.  
  48.     if(!hrh) hrh=hrEazyOpenScreen( hrRequestModeTagList(( struct TagItem * )&hrgtags[0]) , 320, 200, HRES_SCROLL, (UBYTE *)"Xanim Amiga", &error);
  49.     if(!hrh) {CloseMerlin();exit(20);}
  50.  
  51. /*    memstart=hrLockBitMap(&hrh->BitMap);
  52.     hrUnlockBitMap(&hrh->BitMap);
  53. */
  54. /*    hrSwitchDisplay(hrh,HRDISP_ON|HRDISP_BACK);*/
  55. }
  56.